perm filename TEST[AIM,DBL] blob
sn#125923 filedate 1974-10-21 generic text, type T, neo UTF8
00100 PLEASE TYPE IN A LOGICAL EXPRESSION WHICH IS TRUE ( WHEN WE TERMIN
00200 -ATE THE LOOP) AND IS FALSE OTHERWISE.
00300
00400 SHOULD I DISCUSS RAMIFICATIONS?\4NO\*
00500
00600 USER: \4(ANY RELATION IN POSSIBLE:NAME:OF:CLASS:RELNS:22 IS INCOMPATIBLE
00700 WITH ELEMENT:RELNS:15)\*
00800 PUP WANTS USER TO TYPE IN NAME FOR ( RECOGNIZE:#)
00900 I DON'T KNOW ANY NAMES FOR ( RECOGNIZE:#), SO YOU'LL HAVE TO
01000 TYPE A BRAND NEW NAME IN TO ME.
01100 USER: \4CONTRADICTS\*
01200
01300 THE NAME CHOSEN IS CONTRADICTS:27
01400
01500 MOVE CURSOR TO ( CONTRADICTS:27 TYPE OF ( RECOGNIZE:#))
01600 PUP: SORRY TO BOTHER YOU, BUT I CAN NO LONGER DEFER THIS SOMEOF DECISION
01700 :(PROBABILITY=1:# PROBABILITY=0:#
01800 PROBABILITY>0&<1:#)SINCE THE DECISION IS SOME:OF, TYPE ANY ORDERED SUBSE
01900 -T OF:
02000 (A .... PROBABILITY=1:#)
02100 (B .... PROBABILITY=0:#)
02200 (C .... PROBABILITY>0&<1:#)
02300
02400 USER: \4(A B C)\*
02500
02600
02700 (I RECOMMEND THAT POSSIBLE:NAME:OF:CLASS:RELNS:22 BE STRUCTURED INTO (AT
02800 LEAST ALONG ONE DIMENSION) THESE 3 PIECES:
02900 (PROBABILITY=1:#:PART:OF:POSSIBLE:NAME:OF:CLASS:RELNS:22 PROBABILITY=0:#
03000 :PART:OF:POSSIBLE:NAME:OF:CLASS:RELNS:22
03100 PROBABILITY>0&<1:#:PART:OF:POSSIBLE:NAME:OF:CLASS:RELNS:22) .PLEASE TYPE
03200 BACK YES, NO, OR UNSURE.)
03300
03400 USER: \4YES\*
03500
03600 PUP WANTS USER TO TYPE IN NAME FOR ( PROBABILITY:1:#:PART:OF:POSSI
03700 -BLE:NAME:OF:CLASS:RELNS)
03800
03900 I DON'T KNOW ANY NAMES FOR ( PROBABILITY:1:#:PART:OF:POSSIBLE:NAME
04000 :OF:CLASS:RELNS), SO YOU'LL HAVE TO
04100 TYPE A BRAND NEW NAME IN TO ME.
04200 USER: \4YES:RELNS\*
04300
04400 THE NAME CHOSEN IS YES:RELNS:28
04500
04600 PUP WANTS USER TO TYPE IN NAME FOR ( PROBABILITY:0:#:PART:OF:POSSI
04700 -BLE:NAME:OF:CLASS:RELNS)
04800 THE NAME CHOSEN IS NO:RELNS:29
04900
05000 PUP WANTS USER TO TYPE IN NAME FOR ( PROBABILITY>0&<1:#:PART:OF:PO
05100 -SSIBLE:NAME:OF:CLASS:RELNS)
05200 THE NAME CHOSEN IS MAYBE:RELNS:30
05300
05400
05500 DRAW A LINE FROM THE FUNCTION CALL (CONTRADICTS:27 RELATION ELEMENT:REL
05600 -NS:15) OF THE FUNCTION CONTRADICTS:27 TO THIS NEW PIECE OF CODE, WHICH
05700 IS ITS BODY:
05800
05900 (CONTRADICTS:27
06000 (LAMBDA (ARG1 ARG2)
06100 (COMMENT IN ALL CALLS TO DATE, ARG1 IS INSTANTIATED AS RELATION)
06200 (COMMENT IN ALL CALLS TO DATE, ARG2 IS INSTANTIATED AS ELEMENT:RELNS
06300 :15)
06400 (PROGN NIL
06500 (COND
06600 ((MEMBER ARG1 YES:RELNS:28)
06700 (PROGN (COMMENT ARG1 OCCURS WITH PROBABILITY 1, SO IT HAD
06800 BETTER BE
06900 IN ARG2, THE RELEVANT PIECE OF THE WORLD)
07000 (NOT (MEMBER ARG1 ARG2))))
07100 ((MEMBER ARG1 NO:RELNS:29)
07200 (PROGN (COMMENT SINCE ARG1 SHOULD NEVER OCCUR, WE HAVE A
07300 -CONTRADICTION
07400 IF IT IS A MEMBER OF
07500 -ARG2)
07600 (MEMBER ARG1 ARG2)))
07700 (T (PROGN (COMMENT WE MAY OR MAY NOT HAVE ARG1 IN ARG2; EIT
07800 -HER CASE IS ALLOWABLE; SO WE
07900 NEVER HAVE A CONTRADICTION)
08000 NIL))))))
08100 (CONTRADICTS:27 redefined)
08200
08300 PUP: (PUP WORKED ON SOMETHING IMPROBABLE, NAMELY (IN ALL CODE GENERATED,
08400 POSSIBLE:NAME:OF:CLASS:RELNS:22 SHOULD BE
08500 REPLACED BY (APPEND YES:RELNS:28 NO:RELNS:29 MAYBE:RELNS:30)) ,AND HERE
08600 -IS WHAT WE FINALLY DID ABOUT IT: (WE REPLACED
08700 ALL OCCURRENCES OF POSSIBLE:NAME:OF:CLASS:RELNS:22 BY (APPEND YES:RELNS:
08800 -28 NO:RELNS:29 MAYBE:RELNS:30)))